home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 23
/
Amiga Format AFCD23 (Feb 1998, Issue 107).iso
/
-seriously_amiga-
/
shareware
/
programming
/
mui
/
mcc_datestring
/
docs
/
english
/
datestring_mcc.doc
next >
Wrap
Text File
|
1997-12-06
|
18KB
|
578 lines
Table of Contents
Copyright - Copyright information
Distribution - Copying conditions
Disclaimer - Legal Information
Trademark - Trademark information
Support/Updates - How to get updates and support
Author - How to reach the author
Description - What is DateString.mcc?
Requirements - Requirements for using DateString.mcc
Installation - How to install DateString.mcc
Beta testers - Installation information for beta testers
Developer Info - Information for developers
History - Revision history of DateString.mcc
Todo - Todo list
Known problems - List of known problems
Acknowledgments - Acknowledgments
Please rate - Please rate DateString.mcc
Software - Software that uses DateString.mcc
Copyright
---------
This software and its documentation are copyright 1996-1997 by Kai Hofmann. All
rights reserved!
- Permission for COMMERCIAL USE is only given by an extra available commercial
license that must be validated!
Contact me directly for this license, because it will be individually handed
out per your needs!
- Permission is hereby granted, without written agreement and without license,
to USE this software and its documentation for any NON-COMMERCIAL purpose,
provided that the above copyright notice and the following paragraph appear
in all copies of this software (Non-commercial includes Giftware!).
Please send me a full version of your product at no cost including free
updates!
Extra money is welcome (For Bank Account see author - but *ONLY* send in DM
to this Bank Account!).
Distribution
------------
Permission is hereby granted, without written agreement and without license
or royalty fees, to copy and distribute this software and its documentation
for any purpose, provided that the above copyright notice and the following
paragraphs appear in all copies of this software, to:
- All who will distribute this software for free!
- All free accessible INTERNET servers!
- All Aminet® sites
- Fred Fish for his great Amiga-Software-Library
- The German SAAR AG PD-Library
- Angela Schmidt's Meeting Pearls serie
- All others who do NOT take more than US$ 5.- for one disk that includes this
software!
IMPORTANT NOTE:
This package may not be included on any further Aminet CD-ROMs unless authors
contributing their software to the CD-ROM, (without mentioning distribution
"NoCD") are granted a copy of the CD *completely* *free* *of* *charge*.
The Meeting Pearls IV CD-ROM demonstrates that a Freebie policy is also
possible with "very-low-budget" CD-ROMs (*), so Aminet should quickly
re-establish the same Freebie policy it used up to Aminet CD 13.
(*) Suggested retail price for MP4 is DM 14,95/US$ 12/£ 8.95.
DISCLAIMER
----------
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE
LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDER AND/OR OTHER
PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM
PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY REDISTRIBUTE THE PROGRAM AS
PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO
USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE
OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR
OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
THE AUTHOR HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES,
ENHANCEMENTS, OR MODIFICATIONS.
Trademark
---------
DateLib is a trademark of Kai Hofmann.
Amiga, AmigaDOS and Workbench are registered trademarks of Amiga International,
Inc.
Aminet is a registered trademark of Stefan Ossowskis Schatztruhe GmbH
SAS/C is a registered trademark of SAS Institute Inc.
All other trademarked names used herein are used for the purposes of
identification and for the benefit of the trademark holder. No infringement
of trademarks is intended. Trademarks remain the property of the trademark
holder.
Support/Updates
---------------
- Updates will be available via Aminet®
- Support will be available via the authors email address and via
http://home.pages.de/~i07m/amiga/mui/DateString.html
Author
------
Kai Hofmann
Arberger Heerstraße 92
28307 Bremen
Germany
Phone: (+49)-(0)421/480780
EMail: i07m@informatik.uni-bremen.de
i07m@zfn.uni-bremen.de
IRC : PowerStat@#AmigaGer
WWW : http://home.pages.de/~i07m/
Bank account : 1203 7503
Account owner: Kai Hofmann
Bank code : 290 501 01
Bank name : Sparkasse in Bremen/Germany
Description
-----------
DateString is a Custom Class of the Magic User Interface © by Stefan Stuntz.
It's a subclass of string-class and date-class.
The idea of this class was born during developing my Gregor application.
MUI public custom class displaying a string gadget for date strings. The
display format of the date string can be freely defined. An input string can
be parsed by the given format string (see below), or in over 40 known
formats.
DateString.mcc features that are of interest for users:
- Handles years from 8 to 8000
- Supports the Gregorian calendar reform
- Supports 21 languages
- Supports drops of other date objects and date-strings
- Can be dragged around
- A week can begin with any weekday
- Supports various string formats via template
- Can autodetect over 40 date-string formats
DateString.mcc features of interest for developers:
- Based on Date.mcc
- Supports MUIM_Import and MUIM_Export
- The date can be read as day/month/year format or as JD or MJD
- The date range can be restricted
- Method to set the current date
- Methods for increasing and decreasing the date
- Method to compare with another date object
The display format for a DateString object can be defined by the following
formatting codes:
Syntax of Amiga compatible % commands:
%d - Day number with leading 0s
%e - Day number with leading spaces
%m - Month number with leading 0s
%h - Abbreviated month name
%b - Abbreviated month name
%B - Month name
%y - Year using two digits with leading 0s
%Y - Year using four digits with leading 0s
%j - Julian date
%w - Weekday number
%a - Abbreviated weekday name
%A - Weekday name
%U - Week number, taking Sunday as first day of week
%W - Week number, taking Monday as first day of week
%x - Same as "%m/%d/%y"
%D - Same as "%m/%d/%y"
Syntax of % commands:
%Ddf - Day with leading 0s
%Ddv - Day without leading 0s
%DDf - Day within the year with leading 0s
%DDv - Day within the year without leading 0s
%Dmf - Month with leading 0s
%Dmv - Month without leading 0s
%Dms - Month string
%Dma - Abbreviated month string
%Dy2f - 2-digit year with leading 0s
%Dy2v - 2-digit year without leading 0s
%Dy4f - 4-digit year with leading 0s
%Dy4v - 4-digit year without leading 0s
%Dys - Scaliger year
%Dj - JD date
%DJ - MJD date
%Dwn - Weekday number (1-7)
%Dws - Weekday string
%Dwa - Abbreviated weekday string
%DWf - Weeknumber with leading 0s
%DWv - Weeknumber without leading 0s
%DMf - Age of the moon (0-30 ?) with leading 0s
%DMv - Age of the moon (0-30 ?) without leading 0s
The date-string autodetection knows over 40 date-string formats:
(yesterday|today|tomorrow)
wdn
wdn[,] mmm d[ (yy|yyyy)]
wdn[,] d[.][ ]mmm[,][ ][(yy|yyyy)]
wdn[,] d[.][ ]m[.][ ][(yy|yyyy)]
mmm d[ yyyy]
mmm/d[/(yy|yyyy)]
mmm-d[-(yy|yyyy)]
yyyy[-]Www[-]n
yyyy(-|/)m(-|/)d
yyyy(-|/)n[n[n]]
yy[-]Www[-]n
yy-nnn
d. mmm [(yy|yyyy)]
d.m.[(yy|yyyy)]
d-mmm[-(yy|yyyy)]
d-m[-yyyy]
Detection condition:
yyyymmdd | ddmmyyyy (valid date test)
jjjjjjj | yyyynnn (1723980 >= JD <= 2914672)
JJJJJ
JJJJJJ | yymmdd (MJD <= 514671)
d-m-yy | yy-m-d (yy > 31 | valid date test)
d/m[/yyyy] | m/d/yyyy (valid date test)
d/m/yy | m/d/yy | yy/m/d (valid date test)
Symbol explanation:
() = grouping
| = alternative
[] = option
d = day-number (1-2 digits)
dd = 2 digit day
n = 1 digit day within week (1-7 = Mon-Sun)
nnn = 3 digit day within year
ww = 2 digit week within year
m = month-number (1-2 digits)
mm = 2 digit month
yy = 2 digit year
yyyy = 4 digit year
JJJJJ = 5 digit MJD
JJJJJJ = 6 digit MJD
jjjjjjj = 7 digit JD
wdn = weekday-name (long|short in any support language!)
mmm = month-name (long|short in any support language!)
to the short version you can add a '.'
Requirements
------------
- MUI 3.1 (Version 12)
- date.library
- locale.library
- To use the Greek MCC-Install script you need the
"Greek Workbench" © AC Software
- To use the Russian MCC-Install script you need
"Rusifier" © Dmitry Mikhilov
Installation
------------
Only use the installer script!
(The Installer must be in your system-path!)
If you use an Installer prior to V42 you should set the LANGUAGE Tooltype to
your language. Installer V42 and better automatically use your current locale.
Please note that the installer-script is very special, because:
- It features uninstallation
- It is automated
- It is very flexible
- It is very intelligent (for an installer-script ;-)
- It uses WrapGuide (if present) for the AmigaGuide®
documentation if running under a pre V39 system.
- It can be reused by (hopefully) all other MUI custom classes, because the
authors of custom classes need to only change a few things:
* The #copyright variable
* The #min_os_version and #min_os_revision variables
* The #min_mui_version and #min_mui_revision variables
* The #language_mcc and #language_mcc variables
* The P_CustomExists, P_CustomInstall and P_CustomUninstall procedures
* The 'APPNAME' tooltype within the MCC-Install icon.
Beta testers
------------
Version numbers of beta release will not change, so you must uninstall an
earlier installed beta version before you can install a newer one!
Information for Developers
--------------------------
There is no multiple inheritance for Boopsi/MUI for the moment, so we haven't
any chance to create a real Date basis-class. But there is another way to have
the same result (compatibility for all classes that are dealing with dates).
The solution is called interface inheritance like it was done with IDL for
CORBA.
DateString.mcc inherits the interface from Date.mcc!
Btw. it would be wise to use a
SetAttrs(obj,
MUIA_Date_Year, year,
MUIA_Date_Month, month,
MUIA_Date_Day, day,
TAG_DONE
);
instead of single set()'s.
- The following attributes are filtered out, so that they can't bring
a DateString object into trouble:
MUIA_String_Contents, MUIA_String_Accept, MUIA_String_EditHook,
MUIA_String_Integer, MUIA_String_LonelyEditHook, MUIA_String_Secret,
MUIA_String_Reject, MUIA_FillArea
- When MUIA_ObjectID is defined a DateString object will load/save the
following data during MUIM_Application_Load/MUIM_Application_Save
Day, Month, Year
History
-------
28.08.1996 - First release on Aminet
06.09.1996 - Second release on Aminet
* Implementing MUIM_Import, MUIM_Export
* Demo updated
13.12.1996 - Third release on Aminet
* Using MUIV_Font_Button for buttons
* Adding great icons from Eric Gerard
* Fixed Assembler interface
* Fixed Modula-II interface
* Fixed Amiga-E interface
* Fixed Oberon interface
27.11.1997 - Fourth release on Aminet
* Now based on Date.mcc 12.1
* Demo improved
* Added Blitz Basic 2 interface
* Added Cluster interface
* Added ARexx interface
* Added MUIBuilder3 description
* Added German documentation
* Own ParseDate() function
* Added AmigaGuide® V40 features to the documentation
* Added "Please rate" section to the documentation
* Added MagicWB readme
* MCC-Install 43.21
* Compiled with MCCLib 12.4
* MUIA_String_Contents will now be filtered
* Accepts drops of date-strings
Todo
----
- BubbleHelp error text
- Accept string by pressing Tab
Known problems
--------------
- I heard that using 'test' and then 'cancel' the test settings within the
MUI preference manager will not work as expected when in using your MUI
classes within Libs:MUI/ instead of MUI:Libs/MUI/ !!!
- Old versions of the program called 'PhoneCost' written by André Schenk
<schenkae@tick.informatik.uni-stuttgart.de> installed another
'date.library' into 'Libs:'.
Acknowledgments are going to the following people:
Rita Reichl : for correcting my English and being my inspiration
James Cooper,
Steve Krueger,
Doug Walker : For supporting SAS/C® after SAS suspends the support.
Stefan Stuntz : for the Magic User Interface and for his support
Klaus Melchior : for the MUI custom class support
Martin Huttenloher : for MagicWB
Udo Schuermann : for WrapGuide
Stefan Kost : for ag2txt
Jürgen Kohrmeyer : for the rexxtricks.library
Eric Gerard : for his great icons
Please rate
-----------
Please rate DateString.mcc and MCC-Install. To do so, send an email to
aminet-server@wuarchive.wustl.edu with the following content:
RATE dev/mui/MCC-Install.lha <num>
RATE dev/mui/MCC_DateString.lha <num>
where <num> is a mark from 0..10 with 10 being the best.
You can rate several programs in one mail.
Thank you!
Software
--------
The following software products use DateString.mcc:
This is a custom class of the
MUI - MagicUserInterface
Copyright © 1993-1997 by Stefan Stuntz
MUI is a system to generate and maintain graphical user interfaces. With
the aid of a preferences program, the user of an application has the
ability to customize the outfit according to his personal taste.
MUI is distributed as shareware. To obtain a complete package containing
lots of examples and more information about registration please look for
a file called "muiXXusr.lha" (XX means the latest version number) on
your local bulletin boards or on public domain disks.
If you want to register directly, feel free to send
DM 30.- or US$ 20.-
to
Stefan Stuntz
Eduard-Spranger-Straße 7
80935 München
GERMANY
Support and online registration are available at
http://www.sasg.com/
This product is based on or uses parts of
MagicWB - The Workbench Enhancer
--------------------------------
Copyright © 1992-1997, Martin Huttenloher
If you use and like this product you should very much consider to take a
look at MagicWB, which is the authentic source of the style, colors and
design elements contained in this package. It features hundreds of
original icons, patterns, image-drawers, dock-brushes and some specially
designed high-quality fonts to improve the comfort & legibility of your
daily Workbench session.
What is MagicWB? MagicWB is a full replacement for the Graphical User
Interface of the Workbench and has become the standard visual interface on
the Amiga. Over the last years MagicWB has received various merits and an
overwhelming response from Amiga magazines and users worldwide proclaiming
it "a must for all Amiga users". Even commercial applications are
supporting the multi-colored look & style of MagicWB.
Get yourself the latest version of MagicWB and see for yourself the wonders
it can do by automatically transforming your old and dull Amiga Workbench
into an impressive workstation environment that will be the envy of all PC
Windows and Mac users. Update yourself to the state-of-the-art workbench
standard everyone uses on the Amiga! It is also your key to enjoy the new
look & feel of many applications and other MWB add-ons and extensions.
MagicWB is distributed as shareware. Get yourself the latest FREE PUBLIC
RELEASE of MagicWB now: It is called
----------------
MagicWB21p.lha
----------------
and can be found everywhere on Aminet (or your local BBS or public domain
series). Install it and witness the instant magic it performs on your old
Amiga Workbench. Also included is the latest SASG registration program
with which you can order and get the full registered version of MagicWB.
If you want to order directly, feel free to send
DM 30.- or US$ 20.- (cash, no checks!)
to
Martin Huttenloher
Am Hochstraess 4
D-89081 Ulm
Germany
You may also choose to visit the official MagicWB homepage on the world
wide web. There you can find the latest news & support and even register
your MagicWB online (which is much more comfortable and faster). You can
even benefit from various special offers & discounts for MagicWB if you
order through our website! Come and visit MagicWB at:
----------------------
http://www.sasg.com/
----------------------
Save 20% by using the discounts on our website!
Ordering online also saves you a lot of time and work!
WrapGuide is Copyright 1994-1995 Udo Schuermann
All rights reserved